// ov是应用商店app的版本   nv其实指的是后台添加的版本
// 判断版本是否需要更新的方法，应用商店app的版本号和后台添加的版本号进行对比（一位数一位数的对比），后台添加版本号应该大于应用商店app的版本号
export function compareVersion(ver, newVer) { // ov为本地历史版本,nv为当前线上版本

	// let version = ver.split('.');
	// let newVersion = newVer.split('.');
	// if (parseInt(newVersion[0]) > parseInt(version[0])) {
	//     return true;
	// } else if (parseInt(newVersion[0]) == parseInt(version[0])) {
	//     if (parseInt(newVersion[1]) > parseInt(version[1])) {
	//         return true;
	//     } else if (parseInt(newVersion[1]) == parseInt(version[1])) {
	//         if (parseInt(newVersion[2]) > parseInt(version[2])) {
	//             return true;
	//         }
	//     }
	// }
	// return false;
	if (newVer > ver) {
		return true
	} else {
		return false
	}
}

function getApp() {
	if (uni.getSystemInfoSync().platform == "android") {
		let uri = "market://details?id=com.lotohealth.zxyhs";
		plus.runtime.openURL(uri, (err) => {
			let appurl = "https://a.app.qq.com/o/simple.jsp?pkgname=com.lotohealth.zxyhs&fromcase=40003";
			plus.runtime.openURL(appurl);
		})
	} else {
		plus.runtime.launchApplication({
			action: 'itms-apps://itunes.apple.com/cn/app/id1484050499?mt=8'
		});
	}
}

import {
	getNewVersion
} from '@/apis/nurse/index.js'
//新版本

import { httpUrl } from '@/utils/options.js'
export function update() {
	let baseUrl = ''
	if (process.env.NODE_ENV === 'development') {
		// 开发环境:测试地址
		// #ifndef H5
		baseUrl = httpUrl
		// baseUrl = 'http://192.168.1.32:5002'
		// #endif
		// #ifdef H5
		baseUrl = '/api'
		// #endif
	} else if (process.env.NODE_ENV === 'production') {
		// 生产环境:正式地址
		baseUrl = httpUrl
		// baseUrl = 'http://192.168.1.32:5002'
	}
	return new Promise((resolve, rejcet) => {
		let baseUrl = ''
		if (process.env.NODE_ENV === 'development') {
			// 开发环境:测试地址
			// #ifndef H5
			baseUrl = httpUrl
			// baseUrl = 'http://192.168.1.32:5002'
			// #endif
			// #ifdef H5
			baseUrl = '/api'
			// #endif
		} else if (process.env.NODE_ENV === 'production') {
			// 生产环境:正式地址
			baseUrl = httpUrl
			// baseUrl = 'http://192.168.1.32:5002'
		}
		var isAndroid = uni.getSystemInfoSync().platform;

		var systemType = isAndroid == 'android' ? 0 : 1;
		uni.request({
			url: baseUrl + '/nurse/login/version/getNewVersion',
			method: 'GET',
			data: {
				systemType: systemType
			},
			success: (res) => {
				console.log('res------------------------', res);
				if (res.data.object) {
					plus.runtime.getProperty(plus.runtime.appid, function(widgetInfo) {
						console.log(widgetInfo.versionCode, res.data.object.number,
							compareVersion(widgetInfo.versionCode, res.data.object
								.number), 'jieguo ...........');
						// 如果是2.62版本，证明用户没有去app store更新最新， 
						// 则跳转app store更新最新 
						// 安卓:2.64 ios：277
						// if(true){
						// if(res.data.object.number==302){
						// 		if(widgetInfo.versionCode==302){
						// 			uni.showModal({
						// 			    title: '发现新版本，请立即前往应用商店更新！',
						// 				content: `请前往APP商城下载`,
						// 				confirmText:'确定',
						// 				confirmColor:'#3C8EFF',
						// 				showCancel: false,
						// 			    success: function (res) {
						// 			        if (res.confirm) {
						// 						getApp()
						// 			        } else {
						// 			            console.log('用户点击取消');
						// 			        }
						// 			    }
						// 			});
						// 			resolve({data:{success:false}})
						// 			return
						// 		}
						// }
						if (res.data.object.number == 296) {
							// if(true){
							if (widgetInfo.versionCode == 296) {
								uni.showModal({
									title: '护士小鹿更新了分享功能',
									content: '请前往APP商城下载',
									confirmText: '确定',
									confirmColor: '#3C8EFF',
									showCancel: false,
									success: function(res) {
										if (res.confirm) {
											getApp()
											// let appurl = "https://a.app.qq.com/o/simple.jsp?pkgname=com.lotohealth.zxyhs&fromcase=40003";
											// plus.runtime.openURL(appurl);
										} else {
											console.log('用户点击取消');
										}
									}
								});
								resolve({
									data: {
										success: false
									}
								})
								return
							}
						}
						if (res.data.object.number == 308) {
							if (widgetInfo.versionCode == 308) {
								uni.showModal({
									title: '护士小鹿更新了录音功能',
									content: '请前往APP商城下载',
									confirmText: '确定',
									confirmColor: '#3C8EFF',
									showCancel: false,
									success: function(res) {
										if (res.confirm) {
											getApp()
										} else {
											console.log('用户点击取消');
										}
									}
								});
								resolve({
									data: {
										success: false
									}
								})
								return
							}
						}

						if (compareVersion(widgetInfo.versionCode, res.data.object
								.number)) {
							// 非强制更新
							resolve(res)

						} else {
							// 当前是最新版本
							resolve({
								data: {
									success: false
								}
							})
						}
					})
				} else {
					// 当前是最新版本
					resolve({
						data: {
							success: false
						}
					})
				}
			},


		});
	})
}

// 创建下载对象
export function downWgt(address) {
	var wgtWaiting = plus.nativeUI.showWaiting("开始下载");
	var wgtUrl = address;
	var wgtOption = {
		filename: "_doc/update/",
		retry: 1
	};
	// 新建下载任务
	var task = plus.downloader.createDownload(wgtUrl, wgtOption, function(download, status) {
		if (status == 200) {
			console.log('000000000000000')
			wgtWaiting.close();
			//安装wgt包文件
			installWgt(download.filename);
		} else {
			plus.nativeUI.toast('应用升级失败')
			// uni.showToast({
			// 	title:'应用升级失败',
			// 	icon:'none'
			// })
			wgtWaiting.close();
		}
	});
	task.addEventListener("statechanged", function(download, status) {
		console.log(download.state)
		switch (download.state) {
			case 2:
				wgtWaiting.setTitle("已连接到服务器");
				break;
			case 3:
				var percent = download.downloadedSize / download.totalSize * 100;
				wgtWaiting.setTitle("已下载 " + parseInt(percent) + "%");
				break;
			case 4:
				wgtWaiting.setTitle("下载完成");
				break;
		}
	});
	task.start();
}
// 安装wgt文件
export function installWgt(path) {

	plus.nativeUI.showWaiting("安装wgt文件...");
	plus.runtime.install(path + '?time=' + Date.now(), {}, function() {
		plus.nativeUI.closeWaiting();
		console.log("安装成功！");
		plus.nativeUI.alert("应用资源更新完成！", function() {
			// setTimeout(()=>{
			plus.runtime.restart();
			// },2000)
		});
	}, function(e) {
		console.log(e);
		plus.nativeUI.closeWaiting();
		//		console.log("安装wgt文件失败[" + e.code + "]：" + e.message);
		//		plus.nativeUI.alert("安装wgt文件失败[" + e.code + "]：" + e.message);
		mui.alert('请前往APP商城下载', '安装失败', '关闭', function(e) {
			if (e.index == 0) {

			}
		})
	});
}